﻿using System.ComponentModel.DataAnnotations;

namespace WH.Contracts.Systems.Organizations
{
    /// <summary>
    /// 
    /// </summary>
    public class OrganizationInputDto
    {
        /// <summary>
        /// 机构编号
        /// </summary>
        [Required(ErrorMessage = "机构编号不能为空")]
        [MaxLength(50, ErrorMessage = "机构编号最大长度为50")]
        public string Code { get; set; } = null!;

        /// <summary>
        /// 机构名称
        /// </summary>
        [Required(ErrorMessage = "机构名称不能为空")]
        [MaxLength(50, ErrorMessage = "机构名称最大长度为50")]
        public string Name { get; set; } = null!;

        /// <summary>
        /// 产品fid 对应base_product表中fid
        /// </summary>
        public string? ParentId { get; set; }

        /// <summary>
        /// 状态（0停用 1正常）
        /// </summary>
        public bool IsEnable { get; set; }

        /// <summary>
        /// 排序码 数字越小越靠前
        /// </summary>
        public int SortCode { get; set; }

        /// <summary>
        /// 描述/备注说明
        /// </summary>
        public string? Remark { get; set; }

        /// <summary>
        /// 负责人姓名
        /// </summary>
        public string? ManagerName { get; set; }

        /// <summary>
        /// 负责人手机号码
        /// </summary>
        public string? ManagerPhone { get; set; }

        /// <summary>
        /// 负责人微信
        /// </summary>
        public string? ManagerWeiXin { get; set; }

        /// <summary>
        /// 负责人固话
        /// </summary>
        public string? ManagerTel { get; set; }

        /// <summary>
        /// 负责人邮箱
        /// </summary>
        public string? ManagerEmail { get; set; }

        /// <summary>
        /// 负责人传真
        /// </summary>
        public string? ManagerFax { get; set; }

        /// <summary>
        /// 机构联系地址
        /// </summary>
        public string? ContactAddress { get; set; }

        /// <summary>
        /// 机构图片
        /// </summary>
        public string? ImageUrl { get; set; }

        /// <summary>
        /// 邮编
        /// </summary>
        public string? PostalCode { get; set; }

        /// <summary>
        /// 机构类型编号
        /// </summary>
        [Required(ErrorMessage = "机构类型编号不能为空")]
        [MaxLength(50, ErrorMessage = "机构类型编号最大长度为50")]
        public string TypeCode { get; set; } = null!;
    }
}
